Method for the interception of gtp-c messages

ABSTRACT

Disclosed is a species of control-message intercept method which includes a passive monitoring approach whereby the relevant control packets are inspected for the purpose of providing additional information for the purpose of facilitating the operation of some primary or ‘master’ Internet Protocol (IP) charging/rating middleware platform/ gateway system (intended to equip network operators with the ability to rate and bill IP traffic), and secondly, an invasive technique whereby control (GTP-C) messages are injected for the purpose of altering the state of a given data session in an more aggressive fashion (e.g. to drop a data session when the subscriber runs out of money in his/her prepaid account).

CROSS-REFERENCE TO RELATED APPLICATION

This application is a continuation of U.S. patent application Ser. No. 12/066022, filed Mar. 6, 2008, which is a national phase entry of PCT Patent Application No. PCT/CA2005/001346, filed Sep. 6, 2005. The entire contents of the above-referenced documents are incorporated herein by reference.

BACKGROUND

Related teachings in the state of the art as U.S. Patent Application 20030081607 by Kavanagh, entitled general packet radio service tunneling protocol (GTP) packet filter, discloses a method of filtering data packets in General Packet Radio Service (GPRS) Tunneling Protocol (GTP) signaling messages, whereby selected messages from GTP Path Management, GTP Tunnel Management, GTP Mobility Management, and GTP Location Management messages are analyzed against a plurality of filtering criteria, and data packets that do not meet such filtering criteria are dropped while data packets that meet the criteria are passed. However, the application by Kavanagh speaks to a module for selective filtering of

GTP Data packets, whereas our invention of present seeking the protection of Letters Patent, is largely directed at proxying and filtering GTP Control packet(s), which are on a separate User Datagram Protocol (UDP) port number and perform a different set of business operations.

WIPO Patent Application (WO) 03067830 by Camunas et al., entitled a system to obtain value-added services in real-time, based on the General Packet Radio Service (GPRS)-network, discloses a system to obtain value-added services in real-time based on the General Packet Radio Service (GPRS) network, which comprises Serving GPRS Support Node (SGSN) and Gateway GPRS Support Node (GGSN) nodes to enable the access from a mobile station to different data networks, using the radio access of a Global System for Mobile Communications (GSM) or Universal Mobile Telecommunications Service (UMTS) network; wherein between the SGSN and GGSN nodes the invention comprises means to handle GTP protocol data packets, and wherein the GTP messages traffic, which would have otherwise flowed directly between the SGSN and the GGSN nodes, is diverted through said means. When said means detect a GTP message from an SGSN asking a GGSN for the establishment of a GTP tunnel for a Packet Data Protocol (PDP) context, said means establish instead two GTP tunnels: one between the Camunas et al.'s invention and the SGSN and the other between Camunas et al.'s invention and the GGSN (once established, the user data packets will arrive through one of the two tunnels associated to their PDP Context and will be transferred to the other tunnel). However, Camunas et al.'s invention requires all GTP packets to be intercepted, whereas the invention disclosed herewith only requires and speaks to the intermediation of GTP-C (GPRS Tunneling Protocol-Control plane) (the control) packets which remains a more resourceful approach to advancing the practice of the art. Furthermore, our invention may monitor the GTP-U (GPRS Tunneling Protocol-User plane) packets or alternatively rely on the packet intermediations of the method for implementing an Internet Protocol (IP) charging and rating middleware platform and gateway system as detailed in patent application Ser. No. 10/348972, for the purpose of providing the data intermediation and intercept functionality on the data plane. (Technicians skilled in the art will recognize that the invention of present need not be limited to the aforementioned method for implementing an Internet Protocol (IP) charging and rating middleware platform and gateway system and other similar network implementations may be employed without diluting the intent and scope as such).

REFERENCES CITED

U.S. Patent Application 20030081607 dated May, 2003, to Kavanagh, A. in class 370/392.

Foreign Patent Document WO 03067830 dated August, 2003.

TECHNICAL FIELD

The present invention relates generally to wireless telecommunications and gateway/intercept services; and more specifically, to a method for the interception of GTP messages.

SUMMARY

Disclosed is a species of control-message intercept method which includes a passive monitoring approach whereby the relevant control packets are inspected for the purpose of providing additional information for the further additional purpose of facilitating the operation of some primary or ‘master’ Internet Protocol (IP) charging/rating middleware platform/gateway system (intended to equip network operators with the ability to rate and bill IP traffic), and secondly, an invasive technique whereby control (GTP-C) messages are injected for the purpose of altering the state of a given data session in an more aggressive fashion (e.g. to drop a data session when the subscriber runs out of money in his/her prepaid account).

An aspect of the specification provides a method for the interception of general packet radio service tunneling protocol control (GTP-C) messages.

The method can be part of a computer program product (GTP-C Control Module), comprising:

a) a computer readable memory medium; and

b) a computer program.

The computer program product can intermediates said telecommunications traffic between the Gateway GPRS Serving/Support Node (GGSN) and the Serving GPRS Support Node (SGSN).

The computer program product can be articulated to intercept GTP-C messages with given fields, states, addresses, contexts and so forth.

The computer program product can be articulated to ignore and/or simply not process GTP-C messages (generally) or those with given fields, states, addresses, contexts and so forth.

The computer program product can interface with additional network components to provide further functionality as packet/date rating and classification, balance query and so forth.

Another aspect of the specification provides a control-message intercept method which exists, and is implemented as part of a computer program product, whereby control packets are passively monitored for the purpose of providing additional information for the further additional purpose of facilitating the operation of some primary or master Internet Protocol (IP) charging/rating middleware platform/gateway system (intended to equip network operators with the ability to rate, charge, and intermediate IP traffic), and secondly, an invasive technique whereby control (GTP-C) messages are modified, injected, or deleted for the purpose of altering the state of a given data session in an more aggressive fashion (including, where for instance, a data session need be dropped when the subscriber runs out of money in his/her prepaid account).

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 illustrates a typical, non-limiting embodiment of the system level architecture employed in the disclosure of present.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS:

Members skilled in the art will recognize that the ensuing represents an illustrative recital of the preferred embodiments of the invention of present and other embodiments may be articulated, gleaned and articulated from such while still remaining within its spirit and scope. Indeed equivalents found within the state of the art, and those which may reasonably and effectively be deemed equivalent in the future should also be understood as being incorporated by reference hereto and such. Furthermore, much of the language has been illustrative and is to be construed as expressly for pedagogical purposes in helping elucidate the art as concisely and beneficially as practical.

The method for the interception of GTP messages disclosed herewith is implemented as part of a computer program product, hereinafter, the GTP-C Control Module.

FIG. 1 represents the preferred illustrative embodiment of the invention's architecture and, as such, depicts a fault redundant GTP-C Control Module pair 30A, 30B surrounded by Load Balancers 20A, 20B (one Load Balancer 20A on the side of the SGSN 10, the other Load Balancer 20B on the side of the GGSN 50). FIG. 1 also depicts a wireless subscriber handset 60 that connects to SGSN 10 via a wireless antenna 70 and a base station sub-system (BSS) 80. The architecture in FIG. 1 is configured to carry telecommunication traffic GTP messages between wireless subscriber handset 60 and GGSN 50 via SSGN 10.

In alternative embodiments, only a partial GTP-C stack need be articulated and developed when only handling a fraction of the totality of the messages. (These operations are CreateContextRequest/Response, UpdateContextRequest/Response and DeleteContextRequest/Response, although practitioners may well realize that other iterations and operations may be articulated). In this alternative embodiment, for the remainder of the messages, we need only be able to identify them as GTP-C messages and forward them on. (Indeed, this art is not intended to represent a proxy design. The GTP-C connection is generally not terminated at the GTP-C Control Module 30A 30B).

The method for the interception of GTP messages, in the preferred embodiment (though of course not necessarily), may also be co-articulated and implemented with the method for implementing an Internet Protocol (IP) charging and rating middleware platform and gateway system as detailed in patent application Ser. No. 10/348972, to enhance the packet/data rating and classification mechanisms inherent in the invention disclosed hereto. Technicians skilled in the art will recognize that the invention of present need not be limited to the aforementioned method for implementing an Internet Protocol (IP) charging and rating middleware platform and gateway system and other similar network implementations may be employed without diluting the intent and scope as such.

Now, in continuing with reference to FIG. 1, upon detection of a CreateContextRequest (for instance), said message will be delayed while the method for implementing an Internet Protocol (IP) charging and rating middleware platform and gateway system 40A 40B (as detailed in patent application Ser. No. 10/348972) is contacted for balance query. (Technicians skilled in the art will recognize that the invention of present need not be limited to the aforementioned method for implementing an Internet Protocol (IP) charging and rating middleware platform and gateway system and other similar network implementations may be employed without diluting the intent and scope as such). The message is then forwarded on to the GGSN 50 for context creation and the response forwarded back to the SGSN 10 by the GTP-C Control Module 30A 30B. For deleting a context (as, when a subscriber has run out of balance), the method for implementing an Internet Protocol (IP) charging and rating middleware platform and gateway system 40A, 40B, will initiate the delete request to the GTP-C Control Module 30A, 30B. The GTP-C Control Module 30A 30B will in turn send delete requests to both the GGSN 50 and SGSN 10 using spoofed packets.

In alternative embodiments, said deletePDPContext message can also initiate by the SGSN 10 or GGSN 50 where the GTP-C Control Module30A 30B intercepts the message, and further triggers the session deletion to IP charging and rating middleware platform and gateway system 40A 40B. The deletePDPContext may then be simply forwarded by the GTP-C Control Module30A 30B to the GGSN 50 or SGSN 10 depending on the initiator of the deletePDPContext message. 

1. A method, comprising: intercepting a General Packet Radio Service (GPRS) tunneling protocol control (GTP-C) message at a control module residing between a Serving GPRS Support Node (SGSN) and a Gateway GPRS Support Node (GGSN), the GTP-C message associated with a data session of a wireless subscriber device; responsive to intercepting the message, determining if the wireless subscriber device has a sufficient balance; when the wireless subscriber device has a sufficient balance, forwarding the message from the control module; and, when the wireless subscriber device has an insufficient balance, sending spoofed delete requests from the control module to the SGSN and the GGSN.
 2. The method of claim 1 wherein the determining comprises sending a balance query to an additional network component.
 3. The method of claim 2 wherein the additional network component is a charging and rating middleware platform and gateway system.
 4. The method of claim 3 wherein the determining further comprises receiving a response to the balance query from the charging and rating middleware platform and gateway system.
 5. The method of claim 4 wherein the response includes an indication of whether the wireless subscriber device has a sufficient balance, and rating and classification information for the data session.
 6. The method of claim 2, further comprising: prior to sending the spoofed delete requests from the control module, receiving a delete instruction at the control module from the charging and rating middleware platform and gateway system.
 7. A control module, comprising: a first interface for connecting to a Gateway GPRS Support Node (GGSN); a second interface for connecting to a Serving GPRS Support Node (SGSN); the control module configured to intercept a GTP-C message at one of the first and second interfaces, the GTP-C message associated with a data session of a wireless subscriber device; the control module further configured, responsive to intercepting the message, to determine if the wireless subscriber device has a sufficient balance; the control module further configured, when the wireless subscriber device has a sufficient balance, to forward the message from the other of the first and second interfaces; the control module further configured, when the wireless subscriber device has an insufficient balance, to send spoofed delete requests from the first and second interfaces.
 8. The control module of claim 7, further comprising: a third interface for connecting to an additional network component; the control module being configured to make the determination by sending a balance query to the additional network component.
 9. The control module of claim 8 wherein the additional network component is a charging and rating middleware platform and gateway system.
 10. The control module of claim 9, the control module further configured to receive a response to the balance query at the third interface.
 11. The control module of claim 10 wherein the response includes an indication of whether the wireless subscriber device has a sufficient balance, and rating and classification information for the data session.
 12. The control module of claim 8, the control module further configured to receive, prior to sending the spoofed delete requests, a delete instruction at the third interface.
 13. A system, comprising: a first control module according to claim 7; and at least one charging and rating middleware platform and gateway system connected to the third interface of the at least one control module.
 14. The system of claim 13, further comprising: a second control module according to claim 7; a first load balancer connected to the first interfaces of the first and second control modules; and a second load balancer connected to the second interfaces of the first and second control modules.
 15. A non-transitory computer-readable medium storing a plurality of programming instructions executable at a control module for implementing a method comprising: intercepting a General Packet Radio Service (GPRS) tunneling protocol control (GTP-C) message at a control module residing between a Serving GPRS Support Node (SGSN) and a Gateway GPRS Support Node (GGSN), the GTP-C message associated with a data session of a wireless subscriber device; responsive to intercepting the message, determining if the wireless subscriber device has a sufficient balance; when the wireless subscriber device has a sufficient balance, forwarding the message from the control module; and, when the wireless subscriber device has an insufficient balance, sending spoofed delete requests from the control module to the SGSN and the GGSN.
 16. The non-transitory computer-readable medium of claim 15 wherein the determining comprises sending a balance query to an additional network component.
 17. The non-transitory computer-readable medium of claim 16 wherein the additional network component is a charging and rating middleware platform and gateway system.
 18. The non-transitory computer-readable medium of claim 17 wherein the determining further comprises receiving a response to the balance query from the charging and rating middleware platform and gateway system.
 19. The non-transitory computer-readable medium of claim 18 wherein the response includes an indication of whether the wireless subscriber device has a sufficient balance, and rating and classification information for the data session.
 20. The non-transitory computer-readable medium of claim 16, the method further comprising: prior to sending the spoofed delete requests from the control module, receiving a delete instruction at the control module from the charging and rating middleware platform and gateway system. 